1. Arguments de Fonctions
Python offre plusieurs façons de passer des arguments aux fonctions.
def decrire_personne(nom, age, ville="Paris"):
return f"{nom} a {age} ans et habite à {ville}"
print(decrire_personne("Alice", 25))
print(decrire_personne("Bob", 30, "Lyon"))
print(decrire_personne(age=22, nom="Claire"))
def somme(*args):
total = 0
for nombre in args:
total += nombre
return total
print(somme(1, 2, 3))
print(somme(10, 20, 30, 40))
def afficher_info(**kwargs):
for cle, valeur in kwargs.items():
print(f"{cle}: {valeur}")
afficher_info(nom="Alice", age=25, ville="Paris")
2. Portée des Variables (Scope)
Comprendre la portée des variables est crucial pour éviter les erreurs.
variable_globale = "Je suis globale"
def ma_fonction():
variable_locale = "Je suis locale"
print(variable_locale)
print(variable_globale)
global variable_globale
variable_globale = "Modifiée dans la fonction"
ma_fonction()
print(variable_globale)
Astuce : Évitez d'utiliser trop de variables globales. Privilégiez le passage d'arguments et les retours de fonctions.
3. Fonctions Lambda
Les fonctions lambda sont des fonctions anonymes à une seule expression.
carre = lambda x: x ** 2
print(carre(5))
addition = lambda a, b: a + b
print(addition(10, 20))
nombres = [1, 2, 3, 4, 5]
carres = list(map(lambda x: x**2, nombres))
print(carres)
pairs = list(filter(lambda x: x % 2 == 0, nombres))
print(pairs)
4. Modules Python Standard
Python inclut de nombreux modules utiles "batteries included".
import math
print(math.sqrt(16))
print(math.pi)
print(math.factorial(5))
import random
print(random.randint(1, 100))
print(random.choice(["pomme", "banane", "orange"]))
import datetime
maintenant = datetime.datetime.now()
print("Date et heure actuelles:", maintenant)
print("Année:", maintenant.year)
print("Mois:", maintenant.month)
Important : N'utilisez pas from module import * car cela peut créer des conflits de noms. Préférez import module ou from module import fonction_specifique.